package com.itcast.demo.base;

/**
 * 求出两个数的最大公约数，如果有一个自然数a能被自然数b整除，则称a为b的倍数，b为a的约数。
 * 几个自然数公有的约数，叫做这几个自然数的公约数。公约数中最大的一个公约数，称为这几个自然数的最大公约数。
 * 示例1
 *
 * @author zheng.zhang
 */
public class Test2 {
    public static void main(String[] args) {
        Test2 test2 = new Test2();
        int gcd = test2.gcd(3, 6);
        System.out.println(gcd);
    }

    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     * <p>
     * 求出a、b的最大公约数。
     *
     * @param a int
     * @param b int
     * @return int
     */
    public int gcd(int a, int b) {
        if (a == 0 || b == 0) {
            return 0;
        }
        int temp = Math.min(a, b);
        for (int i = temp; i >= 0; i--) {
            if (a % i == 0 && b % i == 0) {
                return i;
            }
        }
        return 0;
    }
}
